#!/usr/bin/python3
# -*-coding:utf-8 -*

"""  Fichier regroupant les fonctions, classes de gestion global du jeu """

# IMPORT
from pygame import init,Rect
from pygame.event import wait
from pygame.locals import QUIT
from pygame.display import set_mode,flip,get_surface

from config import WINDOWS_HEIGHT,WINDOWS_WIDTH,WINDOWS_BACKGROUND
from maps import Map


class Game(object):
    """ 
        Classe de gestion du jeu
        
        Paramètres:
        Surface window -  fenetre du jeu
    """

    def __init__(self):
        """ Constructeur de la classe """
        # Initialisation des modules importées
        init()
        # Initialisation et affichage de la fenetre
        self.window=set_mode((WINDOWS_HEIGHT,WINDOWS_WIDTH))
        # Couleur de fond de la fenêtre
        self.window.fill(WINDOWS_BACKGROUND)

    def play(self):
        """ Méthod de lancement du jeu """
        # Chargement de la carte
        map=Map('exemple_map')
        # Création de la surface que l'on veut afficher
        view=Rect((0,0),get_surface().get_size())
        # Affichage
        self.window.blit(map.show(view),(0,0))
        # Mise a jour de l'écran
        flip()
        # Attente de la fermeture de la fenêtre
        while wait().type!=QUIT:
            pass
